#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
#include <assert.h>
#include <stdlib.h>
#include <time.h>
#define N 40
struct Student;
typedef struct Student T;
typedef struct Student
{
	char stuid[16];
	char name[16];
	char gender;
	int age;
	double score;
}Student;

typedef struct
{
	T* pdata;
	int qsize;
	int front;
	int rear;
}CycleSeqQueue;


int	LoadStuData(Student stu[]);
void ShowAllStu(Student stu[],int n);
void ShowAStu(Student stu);
Student GetAStuCyclic(Student stu[], int n);
Student GetAStuRand(Student stu[], int n);
void InitCycleQueue(CycleSeqQueue* q);
int IsQEmpty(CycleSeqQueue* q);
int IsQFull(CycleSeqQueue* q);
int InQueue(CycleSeqQueue* q, Student in);
int OutQueue(CycleSeqQueue* q, Student* out);
void ShowCSQueue(CycleSeqQueue* q);
int	ReadFrontRear(CycleSeqQueue* q, Student* front, Student* rear);